$(document).ready(function () {
    // 列表上传附件
    $('.short_table_list').on('click','.upload',function (obj) {
        let index = $(obj).parent().parent().find('td:first').text();
        index = parseInt(index) - 1;
        open_page('../../../../public/upload.php?index='+index,'上传附件','60%','60%');
    });
    $('.short_table_list').on('click','.file_close',function () {
        $(this).parent().remove();
    });

    // 点击第一个td
    $('.short_table_list').on('click','.layui-table tbody tr td:first-child',function () {
        // 清除样式
        // $('.short_table_list tbody tr').each(function () {
        //     $('.short_table_list thead th ').css({'border-bottom-color': '#eee'});
        //     $(this).parent().find('td').css({'border-color': '#eee', 'background': '#ffffff'}).removeClass('colchoose');
        //     $(this).parent().find('input,select').css({'background': '#fff'});
        //     $(this).find('td:first-child').css({'background': '#fff', 'color':'#666', 'text-align': 'center'}).removeClass('rowchoose');
        // });

        $(this).parents('.layui-table').find('tr').find('td').css({'border-color': '#eee', 'background': '#ffffff'});
        $(this).parents('.layui-table').find('tr').find('td').removeClass('rowchoose');
        $(this).parents('.layui-table').find('tr').find('td').removeClass('colchoose');
        $(this).parents('.layui-table').find('tr').find('input,select').css({'background': '#fff'});


        $(this).parent().find('td').css({'border-color': '#1ca5ff', 'background': '#cbeaed'});
        $(this).parent().find('input,select').css({'background': '#cbeaed', 'border':'0'});
        $(this).parent().find('.layui-form-select').css({'background': '#cbeaed'});
        // $(this).css({'background': '#1ca5ff', 'color':'#fff', 'text-align': 'center'});
        $(this).addClass('rowchoose');

        // 设置附件上传样式
        var height = $(this).height();
        // var height = $(this).height() + 1;
        var cssTest = "height:"+height+"px !important;background:#cbeaed;border:0";
        $(this).parent().find('input').each(function () {
            $(this).css({"cssText": cssTest})
        });
    });
    // 点击非第一个td
    $('.short_table_list').on('click','.layui-table tbody tr td:not(:first-child)',function () {
        // 清除样式
        // $('.short_table_list tbody tr').each(function () {
        //     $('.layui-table thead th ').css({'border-bottom-color': '#eee'});
        //     $(this).parent().find('td').css({'border': '1px solid #eee', 'background': '#ffffff'}).removeClass('colchoose');
        //     $(this).parent().find('input,select').css({'background': '#fff'});
        //     $(this).find('td:first-child').css({'background': '#fff', 'color':'#666', 'text-align': 'center'}).removeClass('rowchoose');
        // });


        $(this).parents('.layui-table').find('tr').find('td').css({'border': '1px solid #eee', 'background': '#ffffff'});
        $(this).parents('.layui-table').find('tr').find('td').removeClass('rowchoose');
        $(this).parents('.layui-table').find('tr').find('td').removeClass('colchoose');
        $(this).parents('.layui-table').find('tr').find('input,select').css({'background': '#fff'});


        // 设置附件上传样式
        // var height = $(this).height() + 1;
        var height = $(this).height();
        var cssTest = "height:"+height+"px !important;border:0";
        $(this).parent().find('input').each(function () {
            $(this).css({"cssText": cssTest})
        });

        // $(this).css({'border-color': '#1ca5ff', 'background': '#cbeaed'});
        $(this).addClass('colchoose');
        $(this).find('input').css({'background': '#cbeaed'});
        $(this).prev().css({'border-right-color': '#1ca5ff'});
    });

    var oldHTML = $.fn.html;
    $.fn.formhtml =function() {
        if (arguments.length) return oldHTML.apply(this,arguments);
        $("input,textarea,button", this).each(function() {
            this.setAttribute('lay-key','');
            this.setAttribute('value',this.value);
        });
        $(":radio,:checkbox", this).each(function() {
            if (this.checked) this.setAttribute('checked', 'checked');
            else this.removeAttribute('checked');
        });
        $("option", this).each(function() {
            if (this.selected) this.setAttribute('selected', 'selected');
            else this.removeAttribute('selected');
        });
        return oldHTML.apply(this);
    };


    $('.moneyinput').focus(function () {
        var m = $(this).val();
        var dm = '';
        var width = $(this).width() + 34;
        var left = $(this).offset().left;
        var top = $(this).offset().top - $(window).scrollTop() + 36;
        if(m == ''){
            str = '<div id="moneyDiv" style="position: fixed;width:'+width+'px;height: 47px;padding:5px;' +
                'background: #fff;border: 1px solid #ccc;left:'+left+'px;top:'+top+'px;display: none;"></div>';
        }else{
            dm = chineseNumber(m, 2);
            var money = parseNum(m);
            $(this).val(money);
            str = '<div id="moneyDiv" style="position: fixed;width:'+width+'px;height: 47px;padding:5px;' +
                'background: #fff;border: 1px solid #ccc;left:'+left+'px;top:'+top+'px;">'+dm+'</div>';
        }
        $('body').append(str);

        $(window).scroll(function() {
            var id = $('.moneyinput').attr('id');
            var top = $('#'+id).offset().top - $(window).scrollTop() + 36;
            $('body').find('#moneyDiv').css('top',top+'px')
        });

        $(this).on('input propertychange',function () {
            var m = $(this).val();
            var dm = chineseNumber(m, 2);
            $('body').find('#moneyDiv').show().html(dm);
        });
    });
    $('.moneyinput6').focus(function () {
        var m = $(this).val();
        var dm = '';
        var width = $(this).width() + 34;
        var left = $(this).offset().left;
        var top = $(this).offset().top - $(window).scrollTop() + 36;
        if(m == ''){
            str = '<div id="moneyDiv" style="position: fixed;width:'+width+'px;height: 47px;padding:5px;' +
                'background: #fff;border: 1px solid #ccc;left:'+left+'px;top:'+top+'px;display: none;"></div>';
        }else{
            dm = chineseNumber(m, 6);
            var money = parseNum(m);
            $(this).val(money);
            str = '<div id="moneyDiv" style="position: fixed;width:'+width+'px;height: 47px;padding:5px;' +
                'background: #fff;border: 1px solid #ccc;left:'+left+'px;top:'+top+'px;">'+dm+'</div>';
        }
        $('body').append(str);

        $(window).scroll(function() {
            var top = $(this).offset().top - $(window).scrollTop() + 36;
            $('body').find('#moneyDiv').css('top',top+'px')
        });

        $(this).on('input propertychange',function () {
            var m = $(this).val();
            var dm = chineseNumber(m, 6);
            $('body').find('#moneyDiv').show().html(dm);
        });
    });

    $('.moneyinput').blur(function () {
        var m = $(this).val();
        var rule = /\d/;
        if(rule.test(m)){
            $(this).val(parseFormatNum(m, 2));
        }else{
            $(this).val('');
        }
        $('body').find('#moneyDiv').remove();
    });
    $('.moneyinput6').blur(function () {
        var m = $(this).val();
        var rule = /\d/;
        if(rule.test(m)){
            $(this).val(parseFormatNum(m, 6));
        }else{
            $(this).val('');
        }
        $('body').find('#moneyDiv').remove();
    });


});

// 处理明细选中后出现背景消失
function reload_table_list_bac(ele, current) {
    if(current == undefined || current == false){
        $('.'+ele+' tr').each(function (i) {
            // 选中行处理
            if($(this).find('td:first-child').attr('class') == 'rowchoose'){
                $(this).find('.layui-unselect input').each(function (ii) {
                    $(this).css({"background": "#cbeaed"});
                })
            }else{
                // 选中列处理
                $(this).find('.colchoose input').css({"background": "#cbeaed"});
            }
        })
    }else{
        $('.'+ele+' tr', parent.document).each(function (i) {
            // 选中行处理
            if($(this).find('td:first-child').attr('class') == 'rowchoose'){
                $(this).find('.layui-unselect input').each(function (ii) {
                    $(this).css({"background": "#cbeaed"});
                })
            }else{
                // 选中列处理
                $(this).find('.colchoose input').css({"background": "#cbeaed"});
            }
        })
    }
}

/**
 * 明细处理
 */
function update_refresh_row_func() {
    render_date();
    setTimeout(function () {
        $(".short_table_list table tbody tr").click(function () {
            $(".short_table_list table tbody tr").removeClass('line-row');
            $(".short_table_list table tbody tr").attr('sle','');
            $(this).addClass('line-row');
            $(this).attr('sle','sle');
        });

        var divs = document.querySelectorAll(".curarea");
        for (let i = 0; i < divs.length; ++i) {
            var deaHeight = divs[i].scrollHeight
            deaHeight = deaHeight < 35 ? 35 : deaHeight
            if(deaHeight == 35){
                $(divs[i]).attr('style','height:'+deaHeight+'px!important;line-height:35px!important')
            }else{
                $(divs[i]).attr('style','height:'+deaHeight+'px!important')
            }

            divs[i].addEventListener('input', (e) => {
                var shiHei = parseInt(e.target.scrollHeight);
                shiHei = shiHei < 35 ? 35 : shiHei
                if(shiHei == 35){
                    $(divs[i]).attr('style','height:'+shiHei+'px!important;line-height:35px!important')
                }else{
                    $(divs[i]).attr('style','height:'+shiHei+'px!important')
                }
            });
        }

    },1000);
}

/**
 * 明细处理
 */
function short_table_opt_func(bridge_str, table_key, xmObj={}){
    if(!table_key || table_key == undefined || table_key == 'undefined'){
        table_key = 1;
    }
    update_refresh_row_func();

    $(".short_table_add_row").click(function () {
        if($(this).parents('.short_table_list').attr('key') != table_key){
            return false;
        }

        var sle = false;
        var sle_obj;
        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function () {
            if($(this).attr('sle') == 'sle'){
                sle = true;
                sle_obj = $(this);
            }
        });

        if(!sle){
            $(this).parents('.short_table_list').find('table').children('tbody').append(bridge_str);
        }else{
            $(sle_obj).after(bridge_str);
        }

        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function (key,val) {
            $(this).children('td:first-child').html(key+1);
        });

        // 设置滚动条
        if($(this).parents('.short_table_list').find('table').children('tbody').height() >= 500){
            $(this).parents('.short_table_list').find('table').children('thead').css('overflow-y','scroll')
        }

        render_date();
        render_from();
        update_refresh_row_func();
        set_list_render_xmselect(xmObj);
        reload_table_list_bac('short_table_list');
    });

    $(".short_table_copy_row").click(function () {
        if($(this).parents('.short_table_list').attr('key') != table_key){
            return false;
        }
        var sle = false;
        var sle_obj,sle_html;
        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function () {
            if($(this).attr('sle') == 'sle'){
                sle = true;
                sle_obj = $(this);
                sle_html = '<tr>'+$(this).formhtml()+'</tr>';

                if($(this).find('.filedetaobjdata').html() != undefined){
                    var filedetaobjdataStr = $(this).find('.filedetaobjdata').html();
                    var filedetaobjdataLength = $(this).find('.filedetaobjdata').parent('div').find('span:first-child').html();
                    if(filedetaobjdataLength > 0){
                        $(this).find('.filedetaobjdata').parent('div').find('span:first-child').html(0);
                    }
                    $(this).find('.filedetaobjdata').html('[]');
                    sle_html = '<tr>'+$(this).formhtml()+'</tr>';
                    if(filedetaobjdataLength > 0){
                        $(this).find('.filedetaobjdata').parent('div').find('span:first-child').html(filedetaobjdataLength);
                    }
                    $(this).find('.filedetaobjdata').html(filedetaobjdataStr);
                }
            }
        });

        if(!sle){
            layer.msg("请选中要复制的行");return false;
        }else{
            $(sle_obj).after(sle_html);
        }
        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function (key,val) {
            $(this).children('td:first-child').html(key+1);
        });

        // 设置滚动条
        if($(this).parents('.short_table_list').find('tbody').height() >= 500){
            $(this).parents('.short_table_list').find('thead').css('overflow-y','scroll')
        }

        render_date();
        render_from();
        update_refresh_row_func();
        set_list_render_xmselect(xmObj);
        reload_table_list_bac('short_table_list');
    });

    $(".short_table_del_row").click(function () {
        if($(this).parents('.short_table_list').attr('key') != table_key){
            return false;
        }
        var sle = false;
        var sle_obj;
        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function () {
            // 样式处理
            $(this).find('td').css({'border': '1px solid #eee'});
            $('.layui-table thead th ').css({'border-bottom-color': '#eee'});

            if($(this).attr('sle') == 'sle'){
                sle = true;
                sle_obj = $(this);
            }
        });

        if(!sle){
            layer.msg("请选中要删除的行");return false;
        }else{
            $(sle_obj).remove();
        }

        // if($(this).parents('.short_table_list').find('table').children('tbody').children('tr').length < 1){
        //     $(this).parents('.short_table_list').children('table').children('tbody').append(bridge_str);
        // }

        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function (key,val) {
            $(this).children('td:first-child').html(key+1);
        });

        // 取消滚动条
        if($(this).parents('.short_table_list').find('tbody').height() < 500){
            $(this).parents('.short_table_list').find('thead').css('overflow-y','hidden')
        }

        render_date();
        render_from();
        update_refresh_row_func();
        set_list_render_xmselect(xmObj);
        reload_table_list_bac('short_table_list');
    });

    $(".short_table_del_all").click(function () {
        if($(this).parents('.short_table_list').attr('key') != table_key){
            return false;
        }
        var sle = false;
        var sle_obj;
        $(this).parents('.short_table_list').find('table').children('tbody').html('');

        // $(this).parents('.short_table_list').find('table').children('tbody').append(bridge_str);
        $.each($(this).parents('.short_table_list').find('table').children('tbody').children('tr'),function (key,val) {
            $(this).children('td:first-child').html(key+1);
        });

        // 取消滚动条
        if($(this).parents('.short_table_list').find('tbody').height() < 500){
            $(this).parents('.short_table_list').find('thead').css('overflow-y','hidden')
        }

        render_date();
        render_from();
        update_refresh_row_func();
        set_list_render_xmselect(xmObj);
        reload_table_list_bac('short_table_list');
    });
}

function set_list_render_xmselect(xmObj={}) {
    if(xmObj && xmObj.name){
        var types = 'dan';
        if(xmObj.type && xmObj.type == 'duo'){
            types = 'duo';
        }

        $('.'+xmObj.name).each(function (i) {
            if($(this).attr('class') == xmObj.name){
                var num = get_rand_xm_classname(xmObj.name);
                $(this).addClass(xmObj.name+num).attr('key',num);
                if(types == 'dan'){
                    xmselect_list_dan(xmObj.name+num, xmObj.data, '');
                }else{
                    xmselect_list_duo(xmObj.name+num, xmObj.data, []);
                }
            }else{
                var key = $(this).attr('key');
                if($("."+xmObj.name+key).length > 1){
                    var other = $("."+xmObj.name+key)[1];
                    var xmValue = $(other).find('input').val() || '';
                    $(other).html('');
                    var num = get_rand_xm_classname(xmObj.name);
                    $(other).attr('class', xmObj.name+' '+xmObj.name+num).attr('key',num);
                    if(types == 'dan'){
                        xmselect_list_dan(xmObj.name+num, xmObj.data, xmValue);
                    }else{
                        xmselect_list_duo(xmObj.name+num, xmObj.data, xmValue.split(","));
                    }
                }
            }
        });
        // $(".short_table_list tbody xm-select .label-content").attr('style','height: 30px!important;overflow: auto!important;')
    }
}

function get_rand_xm_classname(name) {
    var num = "";
    for (var i = 0; i < 6; i++) {
        num += Math.floor(Math.random() * 10);
    }

    var className = name+num;
    if($("."+className).length > 0){
        return get_rand_xm_classname(name);
    }
    return num;
}



function render_date(){
    // 时间选择
    $('.bdate_y').datetimepicker({
        language: 'zh-CN',//显示中文
        format: 'yyyy',//显示格式
        startView: '4',
        minView: "4",//设置只显示到月份
        initialDate: new Date(),//初始化当前日期
        autoclose: true,//选中自动关闭
        todayBtn: true//显示今日按钮
    });
    $('.bdate_ym').datetimepicker({
        language: 'zh-CN',//显示中文
        format: 'yyyy-mm',//显示格式
        startView: '3',
        minView: "3",//设置只显示到月份
        initialDate: new Date(),//初始化当前日期
        autoclose: true,//选中自动关闭
        todayBtn: true//显示今日按钮
    });

    $('.bdate_ymd').datetimepicker({
        language: 'zh-CN',//显示中文
        format: 'yyyy-mm-dd',//显示格式
        minView: "month",//设置只显示到月份
        initialDate: new Date(),//初始化当前日期
        autoclose: true,//选中自动关闭
        todayBtn: true,//显示今日按钮
    });

    $('.bdate_ymdhi').datetimepicker({
        language: 'zh-CN',//显示中文
        format: 'yyyy-mm-dd hh:ii',//显示格式
        initialDate: new Date(),//初始化当前日期
        autoclose: true,//选中自动关闭
        todayBtn: true//显示今日按钮
    });
    $('.bdate_hi').datetimepicker({
        language: 'zh-CN',//显示中文
        format: 'hh:ii',//显示格式
        startView: '0',
        maxView: "1",
        initialDate: new Date(),//初始化当前日期
        autoclose: true,//选中自动关闭
        todayBtn: true//显示今日按钮
    });

    layui.use(['laydate','layer'],function(){
        var laydate = layui.laydate;

        lay('.bdate_sea_range_y').each(function(){
            laydate.render({
                elem: this
                ,type: 'year'
                ,range: true
            });
        });
        lay('.bdate_sea_range_ym').each(function(){
            laydate.render({
                elem: this
                ,type: 'month'
                ,range: true
            });
        });
        lay('.bdate_sea_range_ymd').each(function(){
            laydate.render({
                elem: this
                ,trigger: 'click'
                ,type: 'date'
                ,range: true
            });
        });
        lay('.bdate_sea_range_ymdhi').each(function(){
            laydate.render({
                elem: this
                ,trigger: 'click'
                ,type: 'datetime'
                ,range: true
            });
        });
    });
}

function get_choose_val(dom) {
    var ids = '';
    $('#'+dom+' button').each(function (i) {
        var id = $(this).attr('key');
        if(i == 0){
            ids = id;
        }else{
            ids += ','+id;
        }
    });
    return ids
}


// 处理多页面点击空白处关闭菜单并处理样式
// $(document).bind('click', function(e) {
//     var e = e || window.event;
//     var elem = e.target || e.srcElement;
//     while (elem) {
//         if ($(e.target).parents('#sideMenu').length != 0) {
//             return;
//         }
//         elem = elem.parentNode;
//     }
//     parent.parent.colseSideStyle();
// });

